home *** CD-ROM | disk | FTP | other *** search
/ Atari Mega Archive 1 / Atari Mega Archive - Volume 1.iso / archiver / lzhsourc.lzh / LZH.SRC / LHUF5VAR.C < prev    next >
C/C++ Source or Header  |  1992-07-02  |  888b  |  36 lines

  1. #include "lh5.h"
  2. #include <stdlib.h>
  3. #include <string.h>  /* memmove() */
  4.  
  5. #define NP (DICBIT + 1)
  6. #define NT (CODE_BIT + 3)
  7. #define PBIT 4  /* smallest integer such that (1U << PBIT) > NP */
  8. #define TBIT 5  /* smallest integer such that (1U << TBIT) > NT */
  9. #if NT > NP
  10.     #define NPT NT
  11. #else
  12.     #define NPT NP
  13. #endif
  14. ushort left[2 * NC - 1], right[2 * NC - 1];
  15. uchar *buf, c_len[NC], pt_len[NPT];
  16. ushort c_freq[2 * NC - 1], c_code[NC],
  17.               p_freq[2 * NP - 1], pt_table[256], pt_code[NPT],
  18.               t_freq[2 * NT - 1];
  19.  
  20. #define PERCOLATE  1
  21. #define NIL        0
  22. #define MAX_HASH_VAL (3 * DICSIZ + (DICSIZ / 512 + 1) * UCHAR_MAX)
  23.  
  24. typedef short node;
  25.  
  26. /* uchar *text, *childcount;
  27.  node pos, matchpos, avail, *position, *parent, *prev, *next = NULL;
  28.  int remainder, matchlen; */
  29.  
  30. #if MAXMATCH <= (UCHAR_MAX + 1)
  31.      uchar *level;
  32. #else
  33.      ushort *level;
  34. #endif
  35.  
  36.